package com.ruoyi.system.service;

import java.util.List;

import com.ruoyi.common.core.domain.CxSelect;
import com.ruoyi.common.core.domain.Ztree;
import com.ruoyi.system.domain.EvtType;

/**
 * 事件类型Service接口
 * 
 * @author ruoyi
 * @date 2024-08-18
 */
public interface IEvtTypeService 
{
    /**
     * 查询事件类型
     * 
     * @param typeId 事件类型主键
     * @return 事件类型
     */
    public EvtType selectEvtTypeByTypeId(Long typeId);

    /**
     * 查询事件类型列表
     * 
     * @param evtType 事件类型
     * @return 事件类型集合
     */
    public List<EvtType> selectEvtTypeList(EvtType evtType);

    /**
     * 新增事件类型
     * 
     * @param evtType 事件类型
     * @return 结果
     */
    public int insertEvtType(EvtType evtType);

    /**
     * 修改事件类型
     * 
     * @param evtType 事件类型
     * @return 结果
     */
    public int updateEvtType(EvtType evtType);

    /**
     * 批量删除事件类型
     * 
     * @param typeIds 需要删除的事件类型主键集合
     * @return 结果
     */
    public int deleteEvtTypeByTypeIds(String typeIds);

    /**
     * 删除事件类型信息
     * 
     * @param typeId 事件类型主键
     * @return 结果
     */
    public int deleteEvtTypeByTypeId(Long typeId);

    public List<Ztree> selectTypeTree(EvtType evtType);

    public List<CxSelect> selectCxSelect(EvtType evtType);

    public List<Long> getOrAddByTypeNames(String typeName1, String typeName2, String typeName3);
}
